package V1.mysql;


import javax.swing.*;
import java.io.IOException;
import java.io.InputStream;
import java.sql.*;
import java.util.Properties;
public class Mysql {
    private static String url;
    private  static  String username;
    private  static  String password;

    public static  void getParam(String fileName) throws IOException {
        //2.2properties类--读取xxx.properties配置文件信息
        Properties p = new Properties();
        //2.3外置文件读取---借助IO---搬运数据--InputStream
        //Mysql.class 表示当前Mysql类的class对象
        //理解：图书馆--区域Mysql相关书籍
        //getClassLoader() 获取当前类的加载器【加载负责读取配置文件信息】
        //理解：图书馆--区域Mysql相关书籍--图书管理员
        //getResourceAsStream(文件)获取当前加载器中键值对信息
        //理解：图书馆--区域Mysql相关书籍--图书管理员--拿明确的书籍
        InputStream its =
                Mysql.class.getClassLoader().getResourceAsStream(fileName);
        p.load(its);
        //2.4 读取数据库基本信息【url 用户 密码】赋值给当前对象【url 用户 密码】
        //properties类--提供方法 getproperty（）读取db_mysql.properties中建
        url = p.getProperty("url");
        username = p.getProperty("");
        password = p.getProperty("");
        System.out.println();



    }

    public static void main(String[] args) throws IOException, SQLException {
        //测试封装概念--链接成功数据库
        Mysql.getParam("db_mysql.properties");

        Connection con= DriverManager.getConnection(url,username,password);
        //2.执行sql
        Statement st=con.createStatement();
        String sql="insert into book values(6,'余华','活着','79')";
        st.executeUpdate(sql);
        String sql1="update book set price=17 where id=3";
        String sql2="delete from where id=5";
        String sql3="select * from book";
//增删改
        int rows=st.executeUpdate(sql);
        System.out.println("修改后的表"+rows);
//查数据
        ResultSet rs=st.executeQuery(sql3);
        while(rs.next()){
            String name=rs.getString("name");
            int id=rs.getInt("id");
            String date=rs.getString("date");
            System.out.println("书名"+name+id+date);
        }
        st.close();
        con.close();

    }
}
